#pragma once
#include "utility.h"
#include "Scene.h"
#include <memory>

class App
{
public:
	virtual ~App(void);

	virtual bool InitApp(const char* title, u32 arg1 = 0, u32 arg2 = 0, u32 arg3 = 0, u32 arg4 = 0) = 0;
	virtual bool Create(int w, int h) = 0;

	virtual void MainLoop() = 0;

protected:
	App(void) {};

protected:
	std::string m_title;
	std::auto_ptr<Scene> m_scene;
};

